package main

import (
	"fmt"
	"strings"
)

///**
//执行用时：0 ms, 在所有 Go 提交中击败了100.00%的用户
//内存消耗：2.6 MB, 在所有 Go 提交中击败了100.00%的用户
// */
//func simplifyPath(path string) string {
//	return filepath.Clean(path)
//}

/**
执行用时：0 ms, 在所有 Go 提交中击败了100.00%的用户
内存消耗：3.1 MB, 在所有 Go 提交中击败了63.59%的用户
 */
func simplifyPath(path string) string {

	pathList := strings.Split(path, "/")

	stk := make([]string, 0)
	for _, e := range pathList {
		if e != "." && e != ".." && e != "" {
			stk = append(stk, e)
		} else if e == ".." && len(stk) > 0 {
			stk = stk[:len(stk) - 1]
		}
	}

	return "/" + strings.Join(stk, "/")
}

func main() {

	fmt.Println(simplifyPath("/home//foo/"))
}
